package builderdto

import (
	"strings"
	"yunj/pkg/yunj/util"
)

// 选择项。用于复选框、单选框、下拉选择、下拉搜索等
type Option struct {
	Value any    `json:"value"` // 选项值
	Label string `json:"label"` // 选项label
}

// 获取所有option的value的逗号分隔的字符串
func OptionValueCommaStr(options []Option) string {
	valueStrs := make([]string, 0, len(options))
	for _, option := range options {
		valueStr, _ := util.ToString(option.Value)
		if valueStr != "" {
			valueStrs = append(valueStrs, valueStr)
		}
	}
	return strings.Join(valueStrs, ",")
}
